package cliente.pagina.contenido.administracion;
import utils.UtilsGenerarHtml;
import cliente.pagina.*;
import cliente.pagina.contenido.*;
import cliente.pagina.contenido.administracion.ContenidoAdministracion;
import helpers.secretaria.aula.*;
import comun.constantes.*;
/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: </p>
 * @author unascribed
 * @version 1.0
 */

// es abtracta para unificar el comportamiento comun de todas las solapas de la pagina de materiales
// y exigir a redefinir ciertos metodos particulares de cada solapa
  public class ContenidoAsignaUsuarioComision  extends VistaContenido {

  public ContenidoAsignaUsuarioComision() {
  }
  public String getTeclaAccesoRapido() {	
		return "";
	}
  public ContenidoAsignaUsuarioComision(Pagina pagina)
  {
    super(pagina);
    // this.setPagina(pagina);
    // obtener el permiso del usuario en los recursos asociados a las actividades
    // obtener permiso de recibir y evaluar actividades
  }

  // redefino el metodo abstracto de Vista contenido
  protected String getNombrePagina()
  {
    //ver cual va en datos personales
    return "asigna_usuarios_en_comisiones.jsp";
  }

  // redefino el metodo abstracto de Vista contenido
  public String getNombreRecurso(){
	 return RECURSOS.ASIGNAR_MIEMBROS_EQUIPO_DOCENTE;
  }

  // redefinida para dar la subcarpeta donde se colocarta el archivo
  protected String getSubcarpetaRecurso()
  {
    return CARPETAS_ARCHIVOS_RECURSO.ACTIVIDADES+"/"+this.getPagina().getIdAula()+"/"+this.getPagina().getIdComision()+"/";
  }

  public void setPagina(Pagina pagina)
  {
   super.setPagina(pagina);
  }

  public String getTitulo(){      
	  String accion = this.getPagina().getParameter(PARAMETROS_PAGINAS.ACCION);
	  if(accion!= null && accion.compareTo(ACCIONES_A_REALIZAR.AGREGAR)==0){
		  return TITULOS_PAGINAS.AGREGAR_QUITAR_USUARIOS_DEL_AULA;
	  }
	  return TITULOS_PAGINAS.ASIGNA_USUARIOS_EN_COMISIONES;
  }

  // redefinirda en cada subclase para que retorne su encabezado de la tabla
  protected String encabezadoTabla(){return "";};


  public String crearJavaScriptSubmit(){
    String retorno=new String("");
      
    String paginaBuscarPersona = "busca_persona.jsp";
        
	paginaBuscarPersona = this.getPagina().getPathRaiz()+"/siat/carrera/materia/busca_persona.jsp";
	paginaBuscarPersona = UtilsGenerarHtml.agregarParametroUrl(paginaBuscarPersona,PARAMETROS_PAGINAS.ACCION2,ACCIONES_A_REALIZAR.AGREGAR);
       
    retorno=retorno+
    "<SCRIPT>"+
    "function sbmtBusqueda(idInput,idSelect)"+
    "{"+     
     "document.crearCurso.inputOcultoID.value=idInput;"+
     "document.crearCurso.inputOcultoNombre.value=idSelect;"+

     "window.open('"+paginaBuscarPersona+"',null,'height=500,width=550,scrollbars=YES')"+
    "}"+

    "function set_documento(idPersona,nombrePersona)"+
    "{"+
      " var addButton = document.getElementById(document.crearCurso.inputOcultoID.value); "+
      "addButton.value=idPersona;"+
      "var inputNombre = document.getElementById(document.crearCurso.inputOcultoNombre.value); "+
      "inputNombre.value=nombrePersona;"+
     "}"+
    "</SCRIPT>";
    
    return retorno;
  }

  public String getHTMLVista(){
	  HelperCrearAula1 helperCrearAula1=null;
	  
	  try{
		  String html = "";
		  String accionDelEvento = this.getPagina().getParameter(PARAMETROS_PAGINAS.ACCION);
		  
		  String action = "";
		  String botonGuardar = "";
		  String botonVolver = "";
		  String paginaBuscarPersona = "busca_persona.jsp";
		  
		  boolean mostrarSoloParticipantesSinPersona = false;		
		  String pathVolver = "";
		  
		  System.out.println("Accion del evento: "+accionDelEvento);
		  
		  if(accionDelEvento!=null &&
				  accionDelEvento.compareTo(ACCIONES_A_REALIZAR.AGREGAR)==0){
			  
			  mostrarSoloParticipantesSinPersona = true;
//			  Vengo de agregar tipos de usuarios al aula	
			  ContenidoAdministracion contenidoAdministracion = new ContenidoAdministracion(this.getPagina());
			  pathVolver = contenidoAdministracion.getPathNombrePagina();
			  
			  ContenidoAgregarQuitarUsuariosAula contenidoAgregarQuitarUsuariosAula = new ContenidoAgregarQuitarUsuariosAula(this.getPagina());
			  String paginaForward = contenidoAgregarQuitarUsuariosAula.getPathNombrePagina();
			  			  			  
			  action = UtilsGenerarHtml.agregarParametroUrl(paginaForward,PARAMETROS_PAGINAS.GUARDAR_CAMBIOS,ACCIONES_A_REALIZAR.MODIFICAR);
			  
			  paginaBuscarPersona = UtilsGenerarHtml.agregarParametroUrl(paginaBuscarPersona,PARAMETROS_PAGINAS.ACCION2,ACCIONES_A_REALIZAR.AGREGAR);
			  
			  
		  }else if(accionDelEvento!=null &&
				  accionDelEvento.compareTo(ACCIONES_A_REALIZAR.ASIGNACION_USUARIOS_EN_COMISION)==0){
			  String accionDeUsuariosEnComision = this.getPagina().getParameter(PARAMETROS_PAGINAS.GUARDAR_CAMBIOS);
			  
			  if(accionDeUsuariosEnComision!=null &&
					  accionDeUsuariosEnComision.compareTo(ACCIONES_A_REALIZAR.GRABAR_USUARIOS_EN_COMISION)==0){
				  //Grabar
				  helperCrearAula1 = new HelperCrearAula1(this.getPagina());
				  Long idComi = null;
				  if(this.getPagina() instanceof PaginaComision)idComi = this.getPagina().getIdComision();						
				  String resultadoOperacion = helperCrearAula1.generarHTMLParticipantesDeLosTiposDeUsuario(false);						
				  if(resultadoOperacion!=null && resultadoOperacion.compareTo(TEXTOS.ACTUALIZACION_DE_DATOS_EXITOSA)==0){					  				
					  ContenidoAdministracion contenidoAdministracion = new ContenidoAdministracion(this.getPagina());
					  String paginaForward = contenidoAdministracion.getPathNombrePagina();
					  
					  html += utils.UtilsGenerarHtml.generarHTMLForward(paginaForward);
				  }else html += UtilsGenerarHtml.getHTMLRecuadroMensajeError("No se agregaron los usuarios deseados.");
				  helperCrearAula1.commit();
			  }
			  
			  ContenidoAdministracion contenidoAdministracion = new ContenidoAdministracion(this.getPagina());
			  pathVolver = contenidoAdministracion.getPathNombrePagina();
			  
			  String paginaForward = this.getPathNombrePagina();
			  			  
			  action = UtilsGenerarHtml.agregarParametroUrl(paginaForward,PARAMETROS_PAGINAS.ACCION,ACCIONES_A_REALIZAR.ASIGNACION_USUARIOS_EN_COMISION);
			  action = UtilsGenerarHtml.agregarParametroUrl(action,PARAMETROS_PAGINAS.GUARDAR_CAMBIOS,ACCIONES_A_REALIZAR.GRABAR_USUARIOS_EN_COMISION);
			  paginaBuscarPersona = UtilsGenerarHtml.agregarParametroUrl(paginaBuscarPersona,PARAMETROS_PAGINAS.ACCION2,ACCIONES_A_REALIZAR.AGREGAR);
			  
			  System.out.println("ACTION...."+action);
		  }		  
		  
		  helperCrearAula1 = new HelperCrearAula1(this.getPagina());
		  
		  String htmlParticipantes = "";
		  htmlParticipantes = helperCrearAula1.generarHTMLSelectResponsables(this.getPagina().getIdAula(),
				  								true,mostrarSoloParticipantesSinPersona);
		  
		  if(htmlParticipantes==null || htmlParticipantes.compareTo("")==0)botonGuardar = "";
		  else botonGuardar = "&#8226; &nbsp; &nbsp;<input name=\"btnCrear\" type=\"button\" class=\"boton\"" +
		  		" id=\"btnCrear\" value=\"Guardar\" onClick=\"realizaSubmit('"+action+"',this.form)\"/>";
		  
		  botonVolver = "<input name=\"btnCrear\" type=\"button\"  class=\"boton\"" +
		  		" id=\"btnCrear\" value=\"Volver\" onClick=\"realizaSubmit('"+pathVolver+"',this.form)\" />";
		  
		  html += crearJavaScriptSubmit()+"       <h1>"+this.getTitulo()+"</h1>\n";
		  
		  html=html+
		  "    <table width=\"570\" border=\"0\" cellspacing=\"0\" cellpadding=\"5\" summary=\"Contenido del Aula Virtual\">"+
		  "      <tr>"+
		  "            <h4><img src= \""+this.getPagina().getPathLogoUsuarioAsignarDocente()+" \" alt=\"\" width=\"24\" height=\"24\">"+this.getTitulo()+"</h4>"+
		  "        <form method=\"post\" name=\"crearCurso\" id=\"crearCurso\">"+
		  "          <input type=\"hidden\" name=\""+PARAMETROS_PAGINAS.ID_AULA+"\" value=\""+this.getPagina().getIdAula()+"\">\n"+
		  "          <input type=\"hidden\" name=\""+PARAMETROS_PAGINAS.ID_ORGANIZACION+"\" value=\""+this.getPagina().getIdOrganizacion()+"\">\n";
		  if(this.getPagina() instanceof PaginaComision)
			  html +="          <input type=\"hidden\" name=\""+PARAMETROS_PAGINAS.ID_COMISION+"\" value=\""+this.getPagina().getIdComision()+"\">\n";
		  
		  html +="   <input type=\"hidden\" name=\"inputOcultoID\">"+
		  "          <input type=\"hidden\" name=\"inputOcultoNombre\">"+
		  "            <legend>Responsables del curso </legend>"+
		  "            <p class=\"recuadroAviso\">Seleccione la persona correspondiente a cada tipo de usuario. </p>"+
		  "            <table width=\"570\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">"+
		  		htmlParticipantes+
		  "            </table>"+
		  "            </fieldset>"+
		  "                    <br />";
		  
		  html += "<div align=\"center\">"+botonVolver+"&nbsp; &nbsp;"+botonGuardar+"</div>";
		  //html += "            </center>"+
		  html +=" <input type=\"hidden\" name=\"nombreInput\"  >"+
		  "        </form>"+
		  "<form name=\"busqueda\" action=\""+paginaBuscarPersona+"\" target=\"blank\" >"+
		  " <input type=\"hidden\" name=\"idBoton\" >"+
		  
		  "</form>"+
		  
		  "        </td>"+
		  "      </tr>"+
		  "    </table>";
		  helperCrearAula1.commit();
		  return html;
	  }
	  catch (Exception ex) {
		  ex.printStackTrace();
		  helperCrearAula1.rollback();
		  return  comun.MensajeDeError.ERROR_EN_LA_GENERACION_DE_LA_PAGINA;
	  }
	  
  }

  //redefino el metodo abstracto de Vista contenido
  public String getTituloLink(){
    return "\"Asociar equipo docente\">Asignar miembro del equipo docente a aulas y comisiones";
  }
 
	
}